﻿#define _CRT_SECURE_NO_WARNINGS  1
#pragma warning(disable:6031)
//p78(1)
//求除矩阵最后一行，最后一列，副对角线外，其他数的和
//#include <stdio.h>
//int main()
//{
//	int j = 0;
//	int arr[10][10] = { 1,2,3,4,5, 2,3,4,5,6, 3,4,5,6,7 };
//	int i = 0;//遍历⾏ 
//	int n = 0;
//	int sum = 0;
//	printf("Enter n:");
//	scanf("%d", &n);
//	printf("Enter an array :");
//	//输⼊ 
//	for (i = 0; i < n; i++)
//	{
//
//		for (j = 0; j < n; j++) //产⽣列号 
//		{
//			scanf("%d", &arr[i][j]); //输⼊数据 
//		}
//	}
//	for (i = 0; i < n; i++)
//	{
//
//		for (j = 0; j < n; j++) //产⽣列号 
//		{
//			if ((i != n - 1 && j != n - 1) && (i + j) != n - 1)
//				sum = sum + arr[i][j];
//		}
//	}
//	printf("sum = %d", sum);
//	return 0;
//}
//P78
//#include<stdio.h>
//int day_of_year(int year, int month, int day);
//int main()
//{
//	int y = 0;
//	int m = 0;
//	int d = 0;
//	int es = 0;
//	scanf("%d/%d/%d", &y, &m, &d);
//	es = day_of_year(y,m, d);
//	printf("%d", es);
//	return 0;
//}
/*int day_of_year(int year, int month, int day)
{
	int leap = 0;
	int a[2][13] = {
		{0,31,28,31,30,31,30,31,31,30,31,30,31}
	,{0,31,29,31,30,31,30,31,31,30,31,30,31 }
	};
	if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
	{
		leap = 1;
		
	}
	for (int i = 0; i < month; i++)
	{
		day = day + a[leap][i];
	}
	return day;
}*/
// p79
//(4)判断是否是矩阵上三角的元素，如果是yes，不是no
//#define _CRT_SECURE_NO_WARNINGS  1
//#pragma warning(disable:6031)
//#include <stdio.h>
//int main()
//{
//	int j = 0;
//	int arr[10][10] = { 1,2,3,4,5, 2,3,4,5,6, 3,4,5,6,7 };
//	int i = 0;//遍历⾏ 
//	int n = 0;
//	printf("Enter n:");
//	scanf("%d", &n);
//	printf("Enter an array :");
//	//输⼊ 
//	for (i = 0; i < n; i++)
//	{
//
//		for (j = 0; j < n; j++) //产⽣列号 
//		{
//			scanf("%d", &arr[i][j]); //输⼊数据 
//		}
//	}
//	for (i = 0; i < n; i++)
//	{
//
//		for (j = 0; j < n; j++) //产⽣列号 
//		{
//			if (n == arr[i][j])
//			{
//				if (i < j)
//					printf("YES");
//				else
//					printf("NO");
//			}
//		}
//	}
//	return 0;
//}
// p71（1）
// 顺序输入数组 逆序输出
//#include<stdio.h>
//int main()
//{
//	int i = 0;
//	int n = 0;
//	scanf("%d",&n);
//	int arr[50] = { 0 };
//	for (i = 0; i < n; i++)
//	{
//		scanf("%d",&arr[i]);
//	}
//	for (i = n-1; i >=0; i--)
//	{
//		printf(" %d", arr[i]);
//	}
//	
//	return 0;
//}
//p71（2）
//最大值及它的最小下标
//#include<stdio.h>
//int main()
//{
//	int i;
//	int  index = 0;
//	int n = 0;
//	printf("Enter n:");
//	scanf("%d", &n);
//	int arr[10] = { };
//	printf("Enter %d integers:", n);
//	for (int i = 0; i < n; i++)
//	{
//		scanf("%d", &arr[i]);
//	}
//	index = 0;
//	for (i = 0; i < n; i++)
//	{
//		if (arr[i] > arr[index])
//			index = i;
//	}
//	printf("max=%d,index=%d", arr[index], index);
//	return 0;
//}
//P91(1)
//用指针找两个数中的最大值，用函数viod findmax(int *px,int *py,int *pmax)
//#include<stdio.h>
//void findmax(int* px, int* py, int* pmax);
//int main()
//{
//	int x = 0;
//	int y = 0;
//	int max = 0;
//	printf("Enter a,b:");
//	scanf("%d%d",&x,&y);
//	findmax(&x, &y,&max);
//	printf("The max is %d", max);
//	return 0;
//}
//void findmax(int* px, int* py, int* pmax)
//{
//	if (*px > *py)
//	{
//		*pmax = *px;
//    }
//	else if (*py > *px)
//	{
//		*pmax = *py;
//	}
//	return;
//}
//(2)用自定义函数void sum_diff(float op1, float op2, float* psum, float* pdiff)，计算两数和以及两数差
//#include<stdio.h>
//void sum_diff(float op1, float op2, float* psum, float* pdiff);
//int main()
//{
//	float x = 0;
//	float y = 0;
//	float sum = 0;
//	float diff = 0;
//	printf("Enter x,y:");
//	scanf("%f %f",& x, &y);
//	sum_diff(x, y, &sum, &diff);
//	printf("The sum is %f\n",sum);
//	printf("The diff is %f", diff);
//	return 0;
//}
//void sum_diff(float op1, float op2, float* psum, float* pdiff)
//{
//	*psum = op1 + op2;
//	*pdiff = op1 - op2;
//	return;
//}
//<<C语言程序设计>>
//P43 1.4个数的和与平均数
//#include<stdio.h>
//int main()
//{
//	int sum = 0;
//	int b = 0;
//	int count = 0;
//	double avery = 0;
//	printf("Enter :");
//	for (int i = 0; i < 4; i++)
//	{
//		scanf("%d",&b);
//		sum = sum + b;
//		count++;
//	}
//	avery = sum / count;
//	printf("sum=%d avery=%.1f\n",sum,avery);
//	return 0;
//}
// 第二章
//程序设计题 1：求整数均值:输入 4 个整数，计算并输出这
//些整数的和与平均值，其中平均值精确到小数点后 1 位。试编写相
//
//应程序。
//#include<stdio.h>
// int main()
//{
//	int a = 0;
//	int n = 0;
//	double avery = 0;
//	int sum = 0;
//	scanf("%d", &n);
//	for (int i = 0; i < n; i++)
//	{
//          scanf("%d",&a);
//		sum = sum + a;
//	}
//	avery = sum / n;
//	printf("sum = %d,avery =%.1lf", sum, avery);
//}
//程序设计题 2：阶梯电价：为了提倡居民节约用电，某省电力公
//司执行“阶梯电价”，安装一户一表的居民用户电价分为两个“阶
//梯”：月用电量 50kW.h(含 50kW.h)以内的，电价为 0.53
//
//元 / kW.h；超过 50kW.h 的，超出部分的用电量电价每千瓦时
//上调 0.05 元。输入用户的月用电量(千瓦时)，计算并输出该用户
//应支付的电费(元)，若用电量小于 0 ，则输出" Invalid 
//Value!"。试编写相应程序
//#include<stdio.h>
//int main()
//{
//	double x = 0;
//	double y = 0;
//	printf("input:");
//	scanf("%lf", &x);
//	if (x < 0)
//	{
//		printf("Invalid Value!");
//	}
//	else if (x <= 50)
//	{
//		y =0.53*x;
//	}
//	else if (x > 50)
//	{
//		y = 50 * 0.53 + (x - 50) * (0.53 + 0.05);
//	}
//	printf("电费=%lf",y);
// return 0;
//}
//程序设计题 3：序列求和：输入两个正整数 m 和 n
//(0 <t<= m≤n)，求(t*t+1/t)的从m到n的和，结果保留 6 位小数。试编写相应程序
//#include<stdio.h>
//int main()
//{
//	int m = 0;
//	int n = 0;
//	double sum = 0;
//	printf("input m n :");
//	scanf("%d%d", &m, &n);
//	for (int t = m; t<= n; t++)
//	{
//		sum =sum + (t * t + 1.0 / t);
//	}
//	printf("sum = %.6lf",sum);
//	return 0;
//}
//程序设计题 4：求交错序列前 n 项和：输入一个正整数 n ，计
//算交错序列 1 - 2 / 3 + 3 / 5 - 4 / 7 + 5 / 9 - …的前 n 项之和。试编写相应程
//序。
// 没完成
//#include<stdio.h>
//int main()
//{
//	int i ;
//	int flag = 1;
//	double sum = 0;
//	int n = 0;
//	int item = 0;
//	printf("input n:");
//	scanf("%d",&n);
//	for (i = 1; i <= n; i++)
//	{
//		item = flag*i / (2*i - 1);
//		sum = sum + item;
//		flag = -flag;
//	}
//	printf("sum=%lf",sum);
//	return 0;
//}
//book test2-3
//#include<stdio.h>
//int main()
//{
//	/*
//	printf(" * * * *\n");
//	printf("  * * * \n");
//	printf("   * * \n");
//	printf("    *\n");*/
//
//		for (int a = 1; a <= 4; a++)
//		{
//			for (int b = 1; b <= a-1; b++)
//			{
//				printf(" ");
//			}
//			for (int c = 0; c <=4-a; c++)
//			{
//				printf(" *");
//			}
//			printf("\n");
//		}
//		return 0;
//}
//test 2-4
//#include<stdio.h>
//int main()
//{
//	int f;
//	int c;
//	f = 150;
//	c = 5 * (f - 32) / 9;
//	printf("fahr =%d, celsius = %d",f,c);
//	return 0;
//}
//test 2-6
//#include<stdio.h>
//int main()
//{
//	int g = 10;
//	int x;
//	int t = 0;
//	printf("下落时间：");
//	scanf("%d", &t);
//	x = g * (t * t) / 2;
//	if (x<=100)
//	{
//      printf("下落距离x=%d", x);
//	}
//	else
//	{
//		printf("error");
//	}
//	
//	return 0;
//}






















































